Настройка подключения Google Таблиц
Для использования Google-таблиц в ZennoDroid нужно выполнить действия, описанные в этой статье.
Добавление нового приложения.
- Входим в свой Google аккаунт или создаем новый.
- Заходим в Google Cloud Platform. При первом переходе надо будет:
- выбрать страну (1);
- ознакомиться с правилами и принять их (2);
- согласиться или отказаться от рассылки (3);
- в конце нажать AGREE AND CONTINUE (4);
- Выбираем в левой панели OAuth consent screen (1) и нажимаем CREATE PROJECT (2), чтобы создать новый проект.
- Вводим любое название проекта в поле Project name (1), но только на английском языке. И Location (Местоположение организации) (2), а затем CREATE (3).
- В следующем окне выбираем External (1) и снова CREATE (2).
- В открывшемся окне вводим любое имя приложения App name (1) и выбираем email в списке User support email (2).
- Прокручиваем страницу до конца и еще раз вводим свой email (3), а затем нажмимаем SAVE AND CONTINUE (4).
- В следующем окне Scopes просто проматываем страницу в самый низ и нажимаем SAVE AND CONTINUE.
- В окне Test users тоже пролистываем вниз и нажимаем SAVE AND CONTINUE.
- В новом окне Summary также листаем до конца и нажимаем BACK TO DASHBOARD.
Публикация проекта.
Testing mode.
Можно оставить приложение в тестовом режиме. Тогда оно будет доступно только для аккаунта-созда теля и пользователей, которые добавлены в список Test Users.
Их может быть не больше 100. И после добавления пользователя в список тестеров удалить его оттуда уже нельзя!
Как добавить в список Test Users?
- На вкладке OAuth consent screen листаем немного вниз и в разделе Test users нажмимаем кнопку
+ADD USERS
. - В открывшемся окне добавляем email необходимого аккаунта и нажмимаем кнопку SAVE.
Publish App.
Теперь можно опубликовать приложение, чтобы оно стало доступно всем пользователям, у которых есть Google аккаунт. Для этого достаточно нажать кнопку PUBLISH APP.
Создание учетных данных.
- В разделе Credentials (1) нажимаем
+CREATE CREDENTIALS
(2) и выбираем пункт OAuth client ID (3).
- Выбираем пункт Desktop app в выпадающем списке Application type (1) и нажимаем CREATE (2).
- Откроется новое окно OAuth client created, в нём кликаем
OK
.
- После этого жмем по названию только что созданного приложения или же по значку его редактирования.
- В открывшемся окне нужно скачать ключ в виде файла, для этого жмем кнопку
DOWNLOAD JSON
.
Работа с API.
Включение API от Google.
- Ссылка для включения Google Sheets API. Выбираем свой проект и нажимаем ENABLE.
- Ссылка для включения Google Drive API. Также выбираем проект, а затем ENABLE.
Добавление ключа в программу.
- Открываем Настройки подключения Google таблиц (Редактирование → Настройки → Google таблицы).
- Нажимаем многоточие […] в правом крае поля для указания пути и выбираем файл учетных данных (1), а затем нажимаем Подключить (2).
- После этого откроется окно браузера, где необходимо будет войти в аккаунт Google, с которого вы создавали ключ.
- Скорее всего появится окно с предупреждением. Поскольку мы доверяем своему приложению, необходимо выбрать Дополнительные настройки (1) и Перейти на страницу "Ваше приложение" (2).
- Теперь даем доступ к данным аккаунта, чтобы можно было читать и записывать таблицы.
- И еще раз.
- Если все сделано правильно, то появится надпись:
Received verification code. You may now close this window
.
Лимиты запросов к API.
Какие есть ограничения?
Есть ограничения на количество запросов: 300 запросов в минуту для одного проекта, общее количество за день не ограничено. Информация актуальна на июль 2024 года.
Где можно увидеть текущее количество сделанных запросов?
Эту информацию можно найти на Дашборде Google Cloud Platform, выбрав нужный проект.
Как увеличить лимиты?
Эту информацию можно найти в официальной документации Google — Request a higher quota.
Как ZennoDroid расходует лимиты?
На количество запросов влияют два фактора: изменялась ли таблица и включена ли загрузка сторонних изменений.
Например, если загрузка сторонних изменений включена, то каждую минуту будет отправляться запрос к API Google Drive для сравнения версий таблиц.
При изменении самой таблицы используются разные виды запросов. Примерно до 5 запросов на таблицу в минуту. То есть если активно меняются 10 таблиц, то будет максимум около 60 запросов в минуту (Sheets API + Drive API).
Ошибка авторизации (403: access_denied).
Подробный текст ошибки:
The developer hasn’t given you access to this app. It’s currently being tested and it hasn’t been verified by Google. If you think you should have access, contact the developer.
Причина:
Вы пытаетесь авторизоваться в приложение, которое находится в Testing Mode с аккаунта, который не находится в списке тестовых пользователей (и не является его создателем).